With the recent positive introduction of virtual systems, cloud systems, and virtual desktops as a background, file servers (storage apparatuses) perform further data aggregation, and a demand for supporting more servers is increasing.
While handling increasing loads, the file servers are also demanded to improve the throughput to requests from servers. Therefore, the file servers are under a situation where they are not allowed to consume Central Processing Unit (CPU) resources (computing resources) wastefully.
In addition to this, the file servers are becoming more sophisticated. For example, a file server employs a data volume compression technique and a de-duplication technique of removing duplicate data, so as to efficiently store a large amount of data on storage media such as a Hard Disk Drive (HDD) and so on. The file server consumes the CPU resources for such processing.
In addition, since a price per data volume is considered as one of performance indexes, file servers that are capable of storing a large amount of data and are inexpensive are desired. That is to say, such file servers are desired that achieve both efficient data storage and a reduction in consumption of CPU resources for the efficient data storage.
For example, in order to achieve efficient data storage, a file server is provided with a function of compressing and storing data. The file server compresses and stores data in response to a write request, and decompresses (extracts) data in response to a read request and then makes a response.
Each time the file server is accessed from a server, the data compression function thereof compresses or decompresses data. Compared with the case of not using such a compression function, the file server consumes more CPU resources. However, with regard to data that has been subjected to sophisticated data compression (for example, image data such as jpeg), further compression of the data may have little compression effectiveness, or even increase the data size. Such cases end up consuming CPU resources wastefully.
To reduce the wasteful consumption of CPU resources, there are known techniques of compressing only designated directories and of determining based on the extensions of files whether to compress the files or not.
Please see, for example, Japanese Laid-open Patent Publications Nos. 2003-338761, 2000-358144, and 06-324925.
If it depends on a user to determine what are to be compressed, the user is demanded to make an appropriate decision about it. A user's inappropriate decision results in more inefficiency, and therefore an operational burden on the user is high.
In addition, considering the case where the decision is made based on the extensions of files, compression of files even with the same extension may produce different compression effectiveness, and therefore this may lead to inefficient compression depending on data. Further, if a file format is changed or another file format is added, an appropriate extension needs to be registered accordingly. This causes a problem that is the lack of ease of maintenance.